package vg.services.main_manager;

import tzhomestudio.framework.implementation.main_service.FrameworkMainServiceHelper;
import vg.interfaces.ll_services.data_base_service.IGraphDataBaseService;
import vg.interfaces.ll_services.lib_service.ILibService;
import vg.services.graph_layout_manager.interfaces.IGraphLayoutManager;
import vg.services.graph_view_manager.interfaces.IGraphViewManager;
import vg.services.main_manager.options.AppInstanceIdOption;
import vg.services.progress_manager.interfaces.IProgressManager;
import vg.services.user_interface_manager.interfaces.IUserInterfaceManager;

import java.util.concurrent.ExecutorService;

/**
 * Contains all necessary service (or resource) links for quick access.
 *
 * Note: Don't edit this class. Read only.
 *
 * @author Timur Zolotuhin (e-mail: tzolotuhin@gmail.com)
 */
public class VGMainServiceHelper extends FrameworkMainServiceHelper {
    // Core managers and services
    public static IProgressManager progressManager;
    public static ExecutorService threadPoolManager;
    public static ILibService libService;

    // Graph managers
    public static IGraphDataBaseService graphDataBaseManager;
    public static IGraphViewManager graphViewManager;
    public static IGraphLayoutManager graphLayoutManager;

    // Other
    public static IUserInterfaceManager userInterfaceManager;

    public static class CmdLineOptions {
        public static AppInstanceIdOption appInstanceIdOption = new AppInstanceIdOption();
    }
}
